package uniandes.cupi2.musiteka.servidor.mundo.musiteka1;

import java.io.Serializable;
import java.util.Date;

import uniandes.cupi2.musiteka.servidor.mundo.ICancion;


public class Cancion implements ICancion, Serializable, Comparable<ICancion>{

    // -----------------------------------------------------------------
    // Constantes
    // -----------------------------------------------------------------

	// -----------------------------------------------------------------
    // Atributos
    // -----------------------------------------------------------------
	/**
	 * 
	 */
	private String artista;
	
	/**
	 * 
	 */
	private String genero;
	
	/**
	 * 
	 */
	private String nombre;
	
	/**
	 * 
	 */
	private String ruta;
	/**
	 * 
	 */
	private String duracion;
	/**
	 * 
	 */
	private int numeroFavoritos;
	/**
	 * 
	 */
	private int numeroNOFavoritos;

	// -----------------------------------------------------------------
    // Constructor
    // -----------------------------------------------------------------
	/**
	 * 
	 */
	public Cancion( String nNombre, String nArtista, String nGenero,  String nRuta, String nDuracion)
	{
		artista=nArtista;
		genero=nGenero;
		nombre=nNombre;
		ruta=nRuta;
		duracion=nDuracion; 
		
	}
	
	// -----------------------------------------------------------------
    // Metodos
    // -----------------------------------------------------------------

	public String darArtista() {
		return artista;
	}

	public String darGenero() {
		return genero;
	}

	public String darNombre() {
		return nombre;
	}

	public String darRuta() {
		return ruta;
	}
	
	public void modificarFavoritos(){
		numeroFavoritos++;
	}
	public void modificarNOFavoritos(){
	numeroNOFavoritos++;
	}
	public String toString(){
		return nombre;
	}

	@Override
	public int darFavoritos() {
		// TODO Auto-generated method stub
		return numeroFavoritos;
	}

	public int darNOFavoritos() {
		// TODO Auto-generated method stub
		return numeroNOFavoritos;
	}

	@Override
	public String darDuracion() {
		// TODO Auto-generated method stub
		return duracion;
	}

	
	public int compareTo(ICancion lol) {
		// TODO Auto-generated method stub
		String[] temp=darDuracion().split(":");
		int duracionCancion=Integer.parseInt(temp[0])*60+Integer.parseInt(temp[1]);
		String[] temp2=lol.darDuracion().split(":");
		int duracionDada=Integer.parseInt(temp[0])*60+Integer.parseInt(temp[1]);
		if(duracionCancion>duracionDada)
			return 1;
		else
			return 0;
	}

	
}
	
